package com.vipboot.framework.core.constant;

/**
 * 缓存组名称常量
 * <p>
 * key 格式为 cacheNames#ttl#maxIdleTime#maxSize
 * <p>
 * ttl 过期时间 如果设置为0则不过期 默认为0
 * maxIdleTime 最大空闲时间 根据LRU算法清理空闲数据 如果设置为0则不检测 默认为0
 * maxSize 组最大长度 根据LRU算法清理溢出数据 如果设置为0则无限长 默认为0
 * <p>
 * 例子: test#60s、test#0#60s、test#0#1m#1000、test#1h#0#500
 */
public interface CacheNameConst {

    /**
     * 演示案例
     */
//    String DEMO_CACHE = "demo:cache#60s#10m#20";
    String DemoCache = "DemoCache#60s#10m#20";

    /**
     * 系统配置
     */
//    String SYS_CONFIG = "sys_config";
    String SysConfig = "SysConfig";

    /**
     * 数据字典
     */
//    String SYS_DICT = "sys_dict";
    String SysDict = "SysDict";

    /**
     * 租户
     */
//    String SYS_TENANT = CacheKeyConst.GlobalRedisKey + "sys_tenant#30d";
    String SysTenant = CacheKeyConst.GlobalRedisKey + "SysTenant#30d";

    /**
     * 客户端
     */
//    String SYS_CLIENT = GlobalConstants.GLOBAL_REDIS_KEY + "sys_client#30d";
    String SysClient = CacheKeyConst.GlobalRedisKey + "SysClient#30d";

    /**
     * 用户账户
     */
//    String SYS_USER_NAME = "sys_user_name#30d";
    String SysUserName = "SysUserName#30d";

    /**
     * 用户名称
     */
//    String SYS_NICKNAME = "sys_nickname#30d";
    String SysNickname = "SysNickname#30d";

    /**
     * 部门
     */
//    String SYS_DEPT = "sys_dept#30d";
    String SysDept = "SysDept#30d";

    /**
     * OSS内容
     */
//    String SYS_OSS = "sys_oss#30d";
    String SysOss = "SysOss#30d";

    /**
     * OSS配置
     */
//    String SYS_OSS_CONFIG = CacheKeyConst.GLOBAL_REDIS_KEY + "sys_oss_config";
    String SysOssConfig = CacheKeyConst.GlobalRedisKey + "SysOssConfig";

    /**
     * 角色自定义权限
     */
//    String SYS_ROLE_CUSTOM = "sys_role_custom#30d";
    String SysRoleCustom = "SysRoleCustom#30d";

    /**
     * 部门及以下权限
     */
//    String SYS_DEPT_AND_CHILD = "sys_dept_and_child#30d";
    String SysDeptAndChild = "SysDeptAndChild#30d";

    /**
     * 在线用户
     */
//    String ONLINE_TOKEN = "online_tokens";
    String OnlineToken = "OnlineToken";
}
